/*
 * @Description: 二叉树定义
 * @Author: zhangbo
 * @Date: 2021-04-08 12:24:40
 * @LastEditTime: 2021-04-08 12:29:55
 * @LastEditors: zhangbo
 */

#pragma once
using namespace std;

template <class T>
class BinaryNode
{
public:
    T value;
    BinaryNode<T> *left;
    BinaryNode<T> *right;
    BinaryNode() : left(nullptr), right(nullptr) {}
    BinaryNode(T &val, BinaryNode<T> *left = nullptr, BinaryNode<T> *left = nullptr) : value(val), left(left), right(right) {}
};